package com.unionftech.common.common.bean

import android.os.Parcel
import android.os.Parcelable

data class CountryInfo(
    val areaCode: String,
    val code: String,
    val code2: String,
    val id: Int,
    val isRisk: Int,
    val isoAlpha3: String,
    val nameCn: String,
    val nameEn: String,
    val risk: Int,
    val riskScore: Int,
    val riskTemp: Int,
    val scbRisk: Int
) : BaseCountryInfo(), Parcelable {

    override val itemType: Int
        get() = TYPE_COUNTRY_INFO

    constructor(parcel: Parcel) : this(
        parcel.readString()!!,
        parcel.readString()!!,
        parcel.readString()!!,
        parcel.readInt(),
        parcel.readInt(),
        parcel.readString()!!,
        parcel.readString()!!,
        parcel.readString()!!,
        parcel.readInt(),
        parcel.readInt(),
        parcel.readInt(),
        parcel.readInt()
    ) {
    }

    override fun writeToParcel(parcel: Parcel, flags: Int) {
        parcel.writeString(areaCode)
        parcel.writeString(code)
        parcel.writeString(code2)
        parcel.writeInt(id)
        parcel.writeInt(isRisk)
        parcel.writeString(isoAlpha3)
        parcel.writeString(nameCn)
        parcel.writeString(nameEn)
        parcel.writeInt(risk)
        parcel.writeInt(riskScore)
        parcel.writeInt(riskTemp)
        parcel.writeInt(scbRisk)
    }

    override fun describeContents(): Int {
        return 0
    }

    companion object CREATOR : Parcelable.Creator<CountryInfo> {
        override fun createFromParcel(parcel: Parcel): CountryInfo {
            return CountryInfo(parcel)
        }

        override fun newArray(size: Int): Array<CountryInfo?> {
            return arrayOfNulls(size)
        }
    }
}